dotConnect for SQLite Documentation
Devart.Data.SQLite Namespace / SQLiteScalarFunction<T1,TResult> Class
Type of the user-defined function parameter.
Type of the user-defined function result.
Members Example

SQLiteScalarFunction<T1,TResult> Class
Base class for user-defined scalar functions with one parameter.
Syntax
'Declaration
 
Public MustInherit Class SQLiteScalarFunction
    (Of T1,TResult) 
   Inherits SQLiteScalarFunction
   Implements System.IDisposable 
 
Type Parameters
T1
Type of the user-defined function parameter.
TResult
Type of the user-defined function result.
Remarks

Use this generic class to derive classes for user-defined scalar functions with one parameter from it. This generic class was introduced to ease the user-defined function creating. It allows to specify parameter count, type, and function result type. As an alternative, you may use SQLiteScalarFunction to create user-defined aggregate functions with any number of parameters.

The scalar function is a simple function, that returns a scalar value and is executed once when called.

To register the user-defined scalar funtion, create the class, derived from SQLiteScalarFunction and pass its name and number of arguments to the base class constructor.

You should also override the Execute(T1,SQLiteConnection) method, which should implement the function actions.

Example
Here is an example of creating of the function, that calculates the square root.
public class MyFunction : SQLiteScalarFunction<double, double> {

        public MyFunction()
        : base("Sqrt") {
        }

        protected override double Execute(double arg1, SQLiteConnection connection) {
      
                return Math.Sqrt(arg1);
        }
}
Inheritance Hierarchy

System.Object
   Devart.Data.SQLite.SQLiteFunction
      Devart.Data.SQLite.SQLiteScalarFunction
         Devart.Data.SQLite.SQLiteScalarFunction<T1,TResult>

Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also